﻿namespace Vdc.Interface
{
    using System;
    using System.ComponentModel;
    using System.Text;

    public class VdcTextBoxCssSettings : VdcPersistentObject
    {
        internal virtual string SerializeToJSON(bool isMultiLine)
        {
            StringBuilder builder = new StringBuilder();
            builder.Append("{");
            if (!isMultiLine)
            {
                builder.Append("'N': '" + this.Container_Normal + "',");
                builder.Append("'O': '" + this.Container_Over + "',");
                builder.Append("'A': '" + this.Container_Active + "',");
                builder.Append("'D': '" + this.Container_Disabled + "'");
            }
            else
            {
                builder.Append("'N': '" + this.Container_MultiLine_Normal + "',");
                builder.Append("'O': '" + this.Container_MultiLine_Over + "',");
                builder.Append("'A': '" + this.Container_MultiLine_Focused + "',");
                builder.Append("'D': '" + this.Container_MultiLine_Disabled + "'");
            }
            builder.Append("}");
            return builder.ToString();
        }

        [Bindable(true), Category("CSS Settings"), DefaultValue("ob_iTCA"), Description("CSS Class for the Container - Active State")]
        public string Container_Active
        {
            get
            {
                object obj2 = this.ViewState["Container_Active"];
                if (obj2 != null)
                {
                    return obj2.ToString();
                }
                return "ob_iTCA";
            }
            set
            {
                this.ViewState["Container_Active"] = value;
            }
        }

        [Category("CSS Settings"), DefaultValue("ob_iTCD"), Description("CSS Class for the Container - Disabled State"), Bindable(true)]
        public string Container_Disabled
        {
            get
            {
                object obj2 = this.ViewState["Container_Disabled"];
                if (obj2 != null)
                {
                    return obj2.ToString();
                }
                return "ob_iTCD";
            }
            set
            {
                this.ViewState["Container_Disabled"] = value;
            }
        }

        [Category("CSS Settings"), Bindable(true), DefaultValue("ob_iTaCD"), Description("CSS Class for the Container - MultiLine mode - Disabled State")]
        public string Container_MultiLine_Disabled
        {
            get
            {
                object obj2 = this.ViewState["Container_MultiLine_Disabled"];
                if (obj2 != null)
                {
                    return obj2.ToString();
                }
                return "ob_iTaCD";
            }
            set
            {
                this.ViewState["Container_MultiLine_Disabled"] = value;
            }
        }

        [Bindable(true), Category("CSS Settings"), DefaultValue("ob_iTaCF"), Description("CSS Class for the Container - MultiLine mode - Focused State")]
        public string Container_MultiLine_Focused
        {
            get
            {
                object obj2 = this.ViewState["Container_MultiLine_Focused"];
                if (obj2 != null)
                {
                    return obj2.ToString();
                }
                return "ob_iTaCF";
            }
            set
            {
                this.ViewState["Container_MultiLine_Focused"] = value;
            }
        }

        [Description("CSS Class for the Container - MultiLine mode - Normal State"), DefaultValue("ob_iTaCN"), Bindable(true), Category("CSS Settings")]
        public string Container_MultiLine_Normal
        {
            get
            {
                object obj2 = this.ViewState["Container_MultiLine_Normal"];
                if (obj2 != null)
                {
                    return obj2.ToString();
                }
                return "ob_iTaCN";
            }
            set
            {
                this.ViewState["Container_MultiLine_Normal"] = value;
            }
        }

        [Description("CSS Class for the Container - MultiLine mode - Over State"), Category("CSS Settings"), DefaultValue("ob_iTaCO"), Bindable(true)]
        public string Container_MultiLine_Over
        {
            get
            {
                object obj2 = this.ViewState["Container_MultiLine_Over"];
                if (obj2 != null)
                {
                    return obj2.ToString();
                }
                return "ob_iTaCO";
            }
            set
            {
                this.ViewState["Container_MultiLine_Over"] = value;
            }
        }

        [Description("CSS Class for the Container - Normal State"), Bindable(true), Category("CSS Settings"), DefaultValue("ob_iTCN")]
        public string Container_Normal
        {
            get
            {
                object obj2 = this.ViewState["Container_Normal"];
                if (obj2 != null)
                {
                    return obj2.ToString();
                }
                return "ob_iTCN";
            }
            set
            {
                this.ViewState["Container_Normal"] = value;
            }
        }

        [Bindable(true), Description("CSS Class for the Container - Over State"), Category("CSS Settings"), DefaultValue("ob_iTCO")]
        public string Container_Over
        {
            get
            {
                object obj2 = this.ViewState["Container_Over"];
                if (obj2 != null)
                {
                    return obj2.ToString();
                }
                return "ob_iTCO";
            }
            set
            {
                this.ViewState["Container_Over"] = value;
            }
        }

        [DefaultValue("ob_iTIE"), Description("CSS Class for the Input Element"), Bindable(true), Category("CSS Settings")]
        public string InputElement
        {
            get
            {
                object obj2 = this.ViewState["InputElement"];
                if (obj2 != null)
                {
                    return obj2.ToString();
                }
                return "ob_iTIE";
            }
            set
            {
                this.ViewState["InputElement"] = value;
            }
        }
    }
}

